﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Web;

namespace CultuRAM.Models
{
    [Table("AccreditingRequests")]
    public class AccreditingRequest
    {
        [Key]
        [Display(Name = "ID")]
        public int AccReqId { get; set; }

        [Display(Name = "Código do Pedido")]
        public string RequestCode { get; set; }

        [Required(ErrorMessage = "O campo {0} é de preenchimento obrigatório!")]
        [DataType(DataType.Date, ErrorMessage = "Introduza uma data válida no formato: dd/mm/yyyy hh:mm"), DisplayFormat(DataFormatString = "{0:dd/MM/yyyy HH:mm", ApplyFormatInEditMode = true)]
        [Display(Name = "Data do Pedido")]
        public DateTime RequestDate { get; set; }


        public int AccStateId { get; set; }

        [Display(Name = "Estado")]
        [ForeignKey("AccStateId")]
        public virtual AccreditingState AccreditingState { get; set; }

        public int EntityId { get; set; }

        [Display(Name = "Entidade")]
        [ForeignKey("EntityId")]
        public virtual Entity Entity { get; set; }
        
        [DataType(DataType.Date, ErrorMessage = "Introduza uma data válida no formato: dd/mm/yyyy hh:mm"), DisplayFormat(DataFormatString = "{0:dd/MM/yyyy HH:mm", ApplyFormatInEditMode = true)]
        [Display(Name = "Data da Resposta")]
        public DateTime FeedbackDate { get; set; }

        [Display(Name = "Resposta")]
        public string Feedback { get; set; }

        public int UserId { get; set; }

        [Display(Name = "Colaborador")]
        [ForeignKey("UserId")]
        public virtual UserProfile UserProfile { get; set; }

    }
}